package com.tmxk.api.days02.wmh;

import java.sql.SQLOutput;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

/*
 *
        **/
public class StringDemo {
    static Map<String, User> userMap = new HashMap<>();

    static {
        User user1 = new User("1001", "Tom", "123456");
        User user2 = new User("1001", "Tom", "123456");
        userMap.put(user1.getUserId(),user1);
        userMap.put(user2.getUserId(),user2);
    }

    public static void main(String[] args) {
        /**
         * 2.1. boolean equals(Object anObject)比较值字符串的内容。
         * 2.2 length()获取字符串长度
         * 2.3 boolean isEmpty()  字符串长度是否为0;
         * 2.4 char charAt(in index)  根据字符串指定下标位置返回对应单个字符。
         * char和String区别：String就是由多个字符（char)组成。
         * 2.5 byte[] getByte() 将字符串转换成字节数组（将字符串内容跟File文件交互对应）
         * 2.6  boolean equalsIgnore(String anotherString)  忽略大小写比较字符串的内容。
         * 2.7  int compareTo(String    anothorString)  字符串比较值大小（按字典顺序比较两个字符串）
         * 如：a.compareTo(b);a字符串大于b字符串 ,返回负数；a字符串等于b字符串，返回0；a字符串小于b字符串，返回正数
         * 2.8  int compareToIgnoreCase(String, str):忽略大小写字符串比较值大小（按字典顺序比较两个字符串）；比较的结果用2.7
         * 2.9 int indexof(Object ch)  返回指定字符第一次出现的字符串内的索引
         * 2.10 int LastIndexOf(Object ch)  返回指定字符的最后一次出现的字符串中的索引。
         * 2.11 String substring(int beginIndex) 根据指定下标位置截取字符串，该方法代表从指定开始位置截取到最后。
         * 2.12 String substring(int beginIndex,int endIndex) 根据指定开始下标位置和结束下标位置截取字符串
         *
         * 注：2.11和2.12截取字符串下标的位置遵循取前不取后。
         * 2.13.String concat(String str) 字符串正则匹配。
         * 2.14.String replace(char, oldChar,char newChar)  字符串根据指定字符进行替换。
         * 2.15. boolean matches(String regex) 字符串正则匹配
         * 2.16. String[] split(String regex)   分割字符串
         * 2.17. String toLowerCase()  将字符串转换成小写
         * 2.18. String toUppperCase() 将字符串转换成大写
         * 2.19 String trim() 去空格
         * 2.20 String format(String format,Object.....args) 字符串格式化指定内容
         * 2.21 String valueof(Object obj)  将指定参数转换成字符串。
         * 2.22. String intern() 一个字符串与该字符串具有相同的内容，保证来自一个唯一的字符串池。
         *
         * **/
        /**
         *  需求 : 登录 / 注册
         *  用户名
         *  密码
         */
        Scanner sc = new Scanner(System.in);
        System.out.println("欢迎使用xx平台,请先登录");
        System.out.print("请输入用户名:");
        String userName = sc.next();
        System.out.print("请输入密码:");
        String password = sc.next();
        // 判断当前用户输入的 用户名和密码是否存在平台系统中
        Collection<User> users = userMap.values();
        boolean isBool = false;
        for (User u : users) {
            if (userName.equalsIgnoreCase(u.getUserName()) && password.equals(u.getPassword())) {
                isBool = true;
                break;
            }
        }
        if (isBool) {
            System.out.println("登录成功,欢迎" + userName + "登录");
            String mes = "登录成功,欢迎".concat(userName).concat("登录");
            System.out.println("mes:" + mes);
        } else {
            System.out.println("登录失败,密码或用户名有误");
        }
    }
}









